package com.tn.exam.entity;

import static javax.persistence.GenerationType.IDENTITY;

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * SysDepartment entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "sys_department")
public class SysDepartment extends BaseEntity implements java.io.Serializable {

	// Fields

	private Integer departmentId;
	private String departmentName;
	private String departmentShortName;
	private Integer departmentSuperiorId;
	private String departmentDuty;
	private String departmentInfo;
	private Date departmentCreateTime;
	private Date departmentModifyTime;
	private String departmentDutyUser;
	private String departmentContactNum;
	private String departmentAddress;

	// Constructors

	/** default constructor */
	public SysDepartment() {
	}

	/** minimal constructor */
	public SysDepartment(Integer departmentId, String departmentName,
			Date departmentCreateTime) {
		this.departmentId = departmentId;
		this.departmentName = departmentName;
		this.departmentCreateTime = departmentCreateTime;
	}

	/** full constructor */
	public SysDepartment(Integer departmentId, String departmentName,
			String departmentShortName, Integer departmentSuperiorId,
			String departmentDuty, String departmentInfo,
			Date departmentCreateTime, Date departmentModifyTime,
			String departmentDutyUser, String departmentContactNum,
			String departmentAddress) {
		this.departmentId = departmentId;
		this.departmentName = departmentName;
		this.departmentShortName = departmentShortName;
		this.departmentSuperiorId = departmentSuperiorId;
		this.departmentDuty = departmentDuty;
		this.departmentInfo = departmentInfo;
		this.departmentCreateTime = departmentCreateTime;
		this.departmentModifyTime = departmentModifyTime;
		this.departmentDutyUser = departmentDutyUser;
		this.departmentContactNum = departmentContactNum;
		this.departmentAddress = departmentAddress;
	}

	// Property accessors
	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "department_id", unique = true, nullable = false)
	public Integer getDepartmentId() {
		return this.departmentId;
	}

	public void setDepartmentId(Integer departmentId) {
		this.departmentId = departmentId;
	}

	@Column(name = "department_name", nullable = false, length = 50)
	public String getDepartmentName() {
		return this.departmentName;
	}

	public void setDepartmentName(String departmentName) {
		this.departmentName = departmentName;
	}

	@Column(name = "department_short_name", length = 50)
	public String getDepartmentShortName() {
		return this.departmentShortName;
	}

	public void setDepartmentShortName(String departmentShortName) {
		this.departmentShortName = departmentShortName;
	}

	@Column(name = "department_superior_id")
	public Integer getDepartmentSuperiorId() {
		return this.departmentSuperiorId;
	}

	public void setDepartmentSuperiorId(Integer departmentSuperiorId) {
		this.departmentSuperiorId = departmentSuperiorId;
	}

	@Column(name = "department_duty", length = 500)
	public String getDepartmentDuty() {
		return this.departmentDuty;
	}

	public void setDepartmentDuty(String departmentDuty) {
		this.departmentDuty = departmentDuty;
	}

	@Column(name = "department_info", length = 10000)
	public String getDepartmentInfo() {
		return this.departmentInfo;
	}

	public void setDepartmentInfo(String departmentInfo) {
		this.departmentInfo = departmentInfo;
	}

	@Column(name = "department_create_time", nullable = false, length = 19)
	public Date getDepartmentCreateTime() {
		return this.departmentCreateTime;
	}

	public void setDepartmentCreateTime(Date departmentCreateTime) {
		this.departmentCreateTime = departmentCreateTime;
	}

	@Column(name = "department_modify_time", length = 19)
	public Date getDepartmentModifyTime() {
		return this.departmentModifyTime;
	}

	public void setDepartmentModifyTime(Date departmentModifyTime) {
		this.departmentModifyTime = departmentModifyTime;
	}

	@Column(name = "department_duty_user")
	public String getDepartmentDutyUser() {
		return this.departmentDutyUser;
	}

	public void setDepartmentDutyUser(String departmentDutyUser) {
		this.departmentDutyUser = departmentDutyUser;
	}

	@Column(name = "department_contact_num")
	public String getDepartmentContactNum() {
		return this.departmentContactNum;
	}

	public void setDepartmentContactNum(String departmentContactNum) {
		this.departmentContactNum = departmentContactNum;
	}

	@Column(name = "department_address")
	public String getDepartmentAddress() {
		return this.departmentAddress;
	}

	public void setDepartmentAddress(String departmentAddress) {
		this.departmentAddress = departmentAddress;
	}

	@Override
	public String toString() {
		return "SysDepartment [departmentId=" + departmentId
				+ ", departmentName=" + departmentName
				+ ", departmentShortName=" + departmentShortName
				+ ", departmentSuperiorId=" + departmentSuperiorId
				+ ", departmentDuty=" + departmentDuty + ", departmentInfo="
				+ departmentInfo + ", departmentCreateTime="
				+ departmentCreateTime + ", departmentModifyTime="
				+ departmentModifyTime + ", departmentDutyUser="
				+ departmentDutyUser + ", departmentContactNum="
				+ departmentContactNum + ", departmentAddress="
				+ departmentAddress + "]";
	}

	
}